#pragma once

template <typename T>
class ThreadList
{
private:
	unsigned int size;
	struct ThreadListNode
	{
		ThreadListNode *next;
		T value;
	} first;
public:
	ThreadList(void);
	~ThreadList(void);
	void push(T value);
	T pop(void);
	unsigned int get_size(void);
};
